package cn.backpackerxl.easyJDBC.mrss;

import cn.backpackerxl.easyJDBC.main.Executor;
import cn.backpackerxl.easyJDBC.util.BeanUtil;
import cn.backpackerxl.easyJDBC.util.JDBC;
import cn.backpackerxl.easyJDBC.util.MySQL;
import cn.backpackerxl.easyJDBC.util.TableBean;

import static cn.backpackerxl.easyJDBC.util.Logger.logger;

/**
 * 数据库删除操作
 *
 * @author: backpackerxl
 * @create: 2021/12/23
 * @filename: EasyJDBCDelete
 **/
public class EasyJDBCRemove<E> {

    /**
     * 删除数据库字段
     * <p>
     * id -> 删除Id
     *
     * @return 0 -> 代表处理失败 1 -> 代表处理成功
     */
    public int remove(Long Id, E entity) {
        TableBean bean = BeanUtil.getBean(entity);
        String sql = String.format("%s %s %s %s %s=?", MySQL.DELETE, MySQL.FROM, bean.getTableName(), MySQL.WHERE, bean.getKey());
        logger(entity, JDBC.DELETE, sql);
        return Executor.doExecutorByMRS(sql, ps -> ps.setLong(1, Id));
    }
}
